package com.edu.bhu.admin.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.edu.bhu.common.core.domain.entity.SysUser;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.edu.bhu.common.annotation.Excel;
import com.edu.bhu.common.core.domain.BaseEntity;

/**
 * 房屋对象 hou_house
 * 
 * @author zhangkeyi
 * @date 2022-02-22
 */
public class HouHouse extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 房屋唯一标识 */
    private Long houseId;

    /** 房屋名称 */
    @Excel(name = "房屋名称")
    private String name;

    /** 房屋面积 */
    @Excel(name = "房屋面积")
    private BigDecimal area;

    /** 房屋介绍 */
    @Excel(name = "房屋介绍")
    private String introduce;

    /** 房屋价格（月） */
    @Excel(name = "房屋价格", readConverterExp = "月=")
    private BigDecimal price;

    /** 租房类型 1.整租 2.合租 */
    @Excel(name = "租房类型 1.整租 2.合租")
    private Long type;

    /** 房屋位置 */
    @Excel(name = "房屋位置")
    private String location;

    /** 出租状态 1.未出租 2.正在出租 */
    @Excel(name = "出租状态 1.未出租 2.正在出租")
    private Long rentStatus;

    /** 房屋状态 1.正常 2.停用 */
    @Excel(name = "房屋状态 1.正常 2.停用")
    private Long status;

    /** 关联用户id */
    @Excel(name = "关联用户id")
    private Long userId;

    /** 更新日期 */
    @Excel(name = "关联用户id")
    private Date updateDate;

    /** 删除标志（0代表存在 2代表删除） */
    private Long delFlag;

    /** = 关联用户 = */
    private SysUser sysUser;

    /** = 关联图片 = */
    private List<HouImages> houImages;

    /** = 关联的第一张图片 = */
    private HouImages houImage;

    /** = 关联标签 = */
    private List<HouTag> houTags;

    public SysUser getSysUser() {
        return sysUser;
    }

    public void setSysUser(SysUser sysUser) {
        this.sysUser = sysUser;
    }

    public List<HouImages> getHouImages() {
        return houImages;
    }

    public void setHouImages(List<HouImages> houImages) {
        this.houImages = houImages;
    }

    public List<HouTag> getHouTags() {
        return houTags;
    }

    public void setHouTags(List<HouTag> houTags) {
        this.houTags = houTags;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    public void setHouseId(Long houseId)
    {
        this.houseId = houseId;
    }

    public Long getHouseId() 
    {
        return houseId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setArea(BigDecimal area) 
    {
        this.area = area;
    }

    public BigDecimal getArea() 
    {
        return area;
    }
    public void setIntroduce(String introduce) 
    {
        this.introduce = introduce;
    }

    public String getIntroduce() 
    {
        return introduce;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setType(Long type) 
    {
        this.type = type;
    }

    public Long getType() 
    {
        return type;
    }
    public void setLocation(String location) 
    {
        this.location = location;
    }

    public String getLocation() 
    {
        return location;
    }
    public void setRentStatus(Long rentStatus) 
    {
        this.rentStatus = rentStatus;
    }

    public Long getRentStatus() 
    {
        return rentStatus;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setDelFlag(Long delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Long getDelFlag() 
    {
        return delFlag;
    }

    public HouImages getHouImage() {
        return houImage;
    }

    public void setHouImage(HouImages houImage) {
        this.houImage = houImage;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("houseId", getHouseId())
            .append("name", getName())
            .append("area", getArea())
            .append("introduce", getIntroduce())
            .append("price", getPrice())
            .append("type", getType())
            .append("location", getLocation())
            .append("rentStatus", getRentStatus())
            .append("status", getStatus())
            .append("userId", getUserId())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
